查看原文
其他

python世界中形影不离的一对情侣

大邓 大邓和他的Python 2019-04-26

文末附有项目代码可供下载

input函数

input()是从控制台获取用户输入的信息,不论用户输入的是什么,input()都会返回字符串类型。 <变量> = input(<提示性文字>)

  1. a = input("请输入你的年龄:")

  2. print(type(a))

Run and output!

  1. 请输入你的年龄:25

  2. <class 'str'>

我们看到当我们运行代码时,我们输入的是数字,但是返回的数据类型是字符串。这点要注意哦!

eval函数

eval()可以将字符串类型转化成python对象。具体我们看下面的例子

  1. print(eval("25"))

  2. print(type(eval("25")))

Run and output!

  1. 25

  2. <class 'int'>

可见eval将字符串转化为python中的整型数据类型。eval实际上能将字符串转化为任意的python对象,如变量名、函数名等。我们继续看几个例子

转化为变量名

eval将字符串转化为python里的变量

  1. sentence = 'python is very easy to learn!'


  2. eval('sentence')

Run and output!

  1. 'python is very easy to learn!'

  1. #### 转化为函数名

  2. def hello():

  3. print('hello world!')


  4. eval('hello')

Run and output!

  1. <function __main__.hello()>

不要奇怪哦,因为上面的eval('hello')等同于hello,但是我们调用函数时候一定要加上括号。

  1. eval('hello')()

Run and output!

  1. hello world!

input与eval

实际上eval()与input()很像一对情侣,在python世界中形影不离。input用来获取用户输入的数据,而eval将输入的数据转化成python对象。

  1. a = input('请输入一个列表:')

  2. print(type(a))

  3. print(type(eval(a)))

Run and output!

  1. 请输入一个列表:[1,2,3,4]

  2. <class 'str'>

  3. <class 'list'>

从图中我们看到,我们输入的列表经过input函数变成了字符串。为了在python程序中继续使用a的列表特性,我们必须使用eval将再转化为python列表对象。同理eval还可以将字符串转化为字典、元组、集合等python对象,这里就不一一做讲解了。

往期文章

字符串格式化你不得不知的那些事儿

将excel中某一列拆分为多个列

Python系列课(爬虫、文本分析、机器学习)视频教程

手把手教你学会LDA话题模型可视化pyLDAvis库

【工具篇】如何用Google Colab高效的学习Python

爬虫实战:抓取知乎问题“大学生如何赚到一万元”

小demo:对德文数据进行文本分析   

使用Python制作WORD报告 

使用Pandas、Jinja和WeasyPrint制作pdf报告  

如何让python代码显示进度信息?   

PySimpleGUI: 开发自己第一个软件  

100G 文本分析语料资源(免费下载) 

文件腾转挪移操作,那都不是事儿


公号后台回复 20190310 ,即可获得本项目代码和咪蒙数据


内容值不了多少钱,希望能值得您的一个肯定



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存